package com.aterrizar.dominio.neo.servicios;

import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;

import com.aterrizar.dominio.Neo4J.ManagerNeo;
import com.aterrizar.dominio.Neo4J.NeoOperation;
import com.aterrizar.dominio.Neo4J.RelTypes;
import com.aterrizar.dominio.usuarios.Usuario;

public class AgregarAmigo implements NeoOperation<Relationship> {

	private Usuario amigo;
	private Usuario usuario;
	
	
	public AgregarAmigo(Usuario usuario, Usuario amigo){
		this.amigo = amigo;
		this.usuario = usuario;		
	}
	
	@Override
	public Relationship execute() {
		Node usuarioNode = ManagerNeo.runInSession(new ConsultarUsuarioNeo(usuario));
        Node amigoNode = ManagerNeo.runInSession(new ConsultarUsuarioNeo(amigo));

        return usuarioNode.createRelationshipTo(amigoNode, RelTypes.KNOWS);
	}

}
